package com.css.openapi.feign.dto;


import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;

/**
 * 人脸H5验证请求DTO
 * 对应文档：-
 */
@Data
public class UnionPayFaceH5VerifyRequestDTO {

    /**
     * 报文类型（固定值：verify.ums.auth.faceh5，必填）
     */
    @NotBlank(message = "actionType不能为空")
    private String actionType = "verify.ums.auth.faceh5";

    /**
     * 平台ID（银商分配，必填）
     */
    @NotBlank(message = "platId不能为空")
    private String platId;

    /**
     * 业务请求流水号（第三方生成，平台内唯一，必填）
     */
    @NotBlank(message = "outRequestId不能为空")
    private String outRequestId;

    /**
     * 身份证号（必填）
     */
    @NotBlank(message = "certNo不能为空")
    private String certNo;

    /**
     * 姓名（必填）
     */
    @NotBlank(message = "name不能为空")
    private String name;

    /**
     * 回调地址（https协议，必填）
     */
    @NotBlank(message = "returnUrl不能为空")
    @Pattern(regexp = "^https://.*$", message = "returnUrl必须为https协议")
    private String returnUrl;

    /**
     * 活体检测类型（固定值：action/silence，必填）
     */
    @NotBlank(message = "type不能为空")
    @Pattern(regexp = "^(action|silence)$", message = "type需为action或silence")
    private String type;

    /**
     * 接入方业务流水号（回调时原样返回，必填）
     */
    @NotBlank(message = "reqSn不能为空")
    private String reqSn;
}